﻿using System;
using System.Runtime.InteropServices;


namespace advadev.Windows.CustomWindows.WindowsGDI
{

    /// <summary>
    /// Contains information about a system appbar message
    /// </summary>
    [StructLayout(LayoutKind.Sequential)]
    internal struct APPBARDATA
    {

        /// <summary>
        /// The size of the structure, in bytes
        /// </summary>
        internal int cbSize;

        /// <summary>
        /// The handle to the appbar window
        /// </summary>
        internal IntPtr hWnd;

        /// <summary>
        /// An application-defined message identifier
        /// </summary>
        internal int uCallbackMessage;

        /// <summary>
        /// A value that specifies an edge of the screen. This member can be one
        /// of the following values:
        /// - ABE_BOTTOM
        /// - ABE_LEFT
        /// - ABE_RIGHT
        /// - ABE_TOP
        /// </summary>
        internal int uEdge;

        /// <summary>
        /// A RECT structure whose use varies depending on the message
        /// </summary>
        internal RECT rc;

        /// <summary>
        /// A message-dependent value
        /// </summary>
        internal bool lParam;

    }

}
